The present invention relates to a consumer set-top terminal that receives and stores digital programming services such as television programs for subsequent playback by the user.
Recently, a new product family has emerged in the set-top industry based upon hard drives inside set-top boxes. These drives are used to store video programs much as with a video cassette recorder (VCR), but without the removeability of the tape media. These devices are extremely expensive, as they include MPEG encoders to process incoming analog television signals for storage on the hard drive in a compressed, digitized format.
Once the expected transition to all digital programming services is made in the industry, the set-top plus hard drive can store video at a far lower cost, because no encoder sub-system would be required. The bits received from the incoming transmissions would simply be stored as they are received, as MPEG transport packets. Unfortunately, the incoming digital rates are set by the source video providers and, in MPEG-2 systems, for instance, can range from about 1.5 Mbps up to 15 Mbps. To the consumer, this will translate to storage capacities that are unpredictable and uncontrollable. Moreover, no quality setting is possible, and the disk will have to be sized big enough to store a program at its highest bitrate of 15 Mbps, which may result in use of an oversize hard drive, thereby raising costs. It will at least produce less useable capacity and confuse the consumer.
Accordingly, it would be desirable to provide an approach to set-top storage for all-digital inputs that solves this problem, that is still low cost, yet provides the consumer with a quality/storage capacity choice that is analogous to a VCR.
The system should allow a user to store one or more programs at a set-top terminal for subsequent playback at the user""s convenience.
The system should store the received programming in a compressed format to reduce the required storage capacity. In particular, the system should provide a transcoder at the terminal to transcode received programming that is already compressed and digitized, e.g., to transcode to a reduced bit rate. Furthermore, the transcoding should be responsive to a user-determinable parameter, such as desired quality level for the programming. In this manner, the user can control the amount of storage space that is used by the transcoded programs.
Optionally, it would further be desirable to provide a user interface such as an on-screen program guide to assist the user in storing the programs.
The interface should provide functions that are similar to a conventional video cassette recorder (VCR) which store programs in an analog format. These functions include, e.g., play, fast forward, rewind, fast rewind, pause, and incremental (scan) forward and reverse.
The system should be implementable at a relatively low cost which is economically feasible for mass-produced consumer set-top devices. The system should be implementable within a set-top device or as a peripheral to a set-top device.
The present invention provides a system having the above and other advantages.
The present invention relates to a consumer set-top terminal that receives and stores digital programming services such as television programs for subsequent playback by the user.
In particular, the invention provides an application of transcoding to consumer products that store video, e.g., on hard drives or on tape, where the storage and playback behavior correspond to that expected by a consumer from existing devices, such as VCRs, and at a relatively low cost.
The present invention provides a transcoder at a terminal that transcodes the received compressed data to a compressed format, e.g., with a lower bit rate, in accordance with a user-selectable parameter. For example, the user can select a high, medium or low quality level for transcoding that is analogous to the use of an analog VCR tape in different time storage modes, e.g., two, four or six hours, respectively.
For this analogy, note that, in the two hour mode, the analog tape moves relatively fast so that a given amount of data is stored in a larger tape area, resulting in a higher quality. Conversely, in the six hour mode, the analog tape moves relatively slowly so that a given amount of data is stored in a smaller tape area, resulting in a lower quality. Again, this is an analogy only that relates the digital storage of the present invention to the analog tape concept that may be more readily understood by the user. For digital storage, each data bit is stored, and the quality is related to the number of bits that represent an image.
For this digital storage, any type of storage device can be used, such as a hard drive, floppy disk drive, magnetic tape, or optical storage media (DVD, CD, laser disc). Moreover, the storage medium may be removable by the user. Thus, when the medium becomes full, the user can insert a replacement.
By selecting the quality level, the user therefore has an idea of the amount of storage that will be consumed when storing a program. Additionally, the user has the option of storing particularly favorite programs at a higher quality. For example, a user may desire to store a movie with special effects with a high quality, while a sports event is stored at a medium quality, and a news program or lecture is stored at a lower quality. Of course, even the lower quality should provide an acceptable viewing experience. Thus, the quality level is a relative term, not an absolute one.
The invention thus uses transcoding at a user terminal, which is present in a user""s home or business, for example, to provide additional features and functions to the user. This enhances the user""s enjoyment and convenience. The revenues of the system operator are also enhanced since these features will attract new subscribers to the network, and lead the users to order additional programming at an additional cost.
A particular method for storing data at a user terminal from a compressed digital data stream received thereat, includes the step of transcoding at least a portion of the received data stream at the terminal to provide corresponding transcoded data. The transcoded data is stored at a storage device associated with the terminal. Additionally, a user input is received that is indicative of a desired transcoding parameter, where the transcoding step is responsive to the desired transcoding parameter.
A corresponding user terminal is also presented.